<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가 
?>
<style>
#mw_mobile .fregister {
    list-style:none;
    margin:5px;
    padding:5px;
    box-shadow: 0 1px #EBEBEB;
    border-radius: 3px;
    border: 1px solid;
    border-color: #E5E5E5 #D3D3D3 #B9C1C6;
    background-color:#fff;
}
.write_head { width:50px; height:30px; text-align:center; color:#8492A0; }
.field { border:1px solid #ccc; }
</style>

<script>
var member_skin_path = "<?=$member_skin_path?>";
</script>

<script src="<?=$member_skin_path?>/ajax_register_form.jquery.js"></script>
<script src="<?=$g4_path?>/js/md5.js"></script>
<script src="<?=$g4_path?>/js/sideview.js"></script>

<form id="fregisterform" name="fregisterform" method="post" onsubmit="return fregisterform_submit(this);" enctype="multipart/form-data" autocomplete="off">
<input type="hidden" name="w" value="<?=$w?>">
<input type="hidden" name="url" value="<?=$urlencode?>">
<input type="hidden" name="mb_jumin" value="<?=$jumin?>">
<input type="hidden" name="mb_id_enabled" value="" id="mb_id_enabled">
<input type="hidden" name="mb_nick_enabled" value="" id="mb_nick_enabled">
<input type="hidden" name="mb_email_enabled" value="" id="mb_email_enabled">

<div class="fregister">

<div class="form-group">
    <label for="reg_mb_id" class="col-lg-2 control-label">아이디</label>
    <div class="col-lg-10">
        <input class="form-control" maxlength=20 size=20 id='reg_mb_id' name="mb_id" value="<?=$member[mb_id]?>" <? if ($w=='u') { echo "readonly style='background-color:#dddddd;'"; } ?>
            <? if ($w=='') { echo "onblur='reg_mb_id_check();'"; } ?>>
        <span id='msg_mb_id'></span>
        <div style="color:#66a2c8">※ 영문자, 숫자, _ 만 입력 가능. <br>※ 최소 3자이상 입력하세요.</div>
    </div>
</div>

<div class="form-group">
    <label for="mb_password" class="col-lg-2 control-label">패스워드 </label>
    <div class="col-lg-10">
        <input class="form-control" type="password" id="mb_password" name="mb_password" maxlength="20" <?=($w=="")?"required":"";?> itemname="패스워드">
    </div>
</div>

<div class="form-group">
    <label for="mb_password_re" class="col-lg-2 control-label">패스워드 확인</label>
    <div class="col-lg-10">
        <input class="form-control" type="password" id="mb_password_re" name="mb_password_re" maxlength="20" <?=($w=="")?"required":"";?> itemname="패스워드 확인">
    </div>
</div>

<div class="form-group">
    <label for="mb_name" class="col-lg-2 control-label">이름</label>
    <div class="col-lg-10">
        <input class="form-control" type="text" id="mb_name" name="mb_name" itemname="이름" value="<?=$member[mb_name]?>" <?=$member[mb_name]?"readonly":"";?>>
    </div>
</div>

<div class="form-group">
    <label for="mb_name" class="col-lg-2 control-label">별명</label>
    <div class="col-lg-10">
        <?php
        $nick_date = date("Y-m-d", $g4[server_time] - ($config[cf_nick_modify] * 86400));
        if ($member[mb_nick_date] <= $nick_date) { // 별명수정일이 지났다면 수정가능
        ?>
        <input type="hidden" name="mb_nick_default" value="<?=$member[mb_nick]?>">
        <input class="form-control" type="text" id="reg_mb_nick" name="mb_nick" maxlength="20" value="<?=$member[mb_nick]?>" onblur="reg_mb_nick_check();">
        <span id="msg_mb_nick"></span>
        <div style="color:#66a2c8">
        ※ 공백없이 한글,영문,숫자만 입력 가능 (한글2자, 영문4자 이상)
        <br>※ 별명을 바꾸시면 앞으로 <?=$config[cf_nick_modify]?>일 이내에는 변경 할 수 없습니다.
        <? } else { ?>
        <input type=hidden name="mb_nick_default" value='<?=$member[mb_nick]?>'>
        <input class="form-control" type="text" name="mb_nick" value="<?=$member[mb_nick]?>" readonly>
        ※ 별명은 <?=$nick_date?> 이후 변경 가능합니다.
        <br>※ 별명을 바꾸시면 <?=(int)$config[cf_nick_modify]?>일 이내에는 변경 할 수 없습니다.
        <? } ?>

    </div>
</div>

<div class="form-group">
    <label for="reg_mb_email" class="col-lg-2 control-label">E-mail</label>
    <div class="col-lg-10">
        <input type="hidden" name="old_email" value="<?=$member['mb_email']?>">
        <input class="form-control" type="text" id="reg_mb_email" name="mb_email" size="38" maxlength="100" value="<?=$member['mb_email']?>" onblur="reg_mb_email_check()">
        <span id='msg_mb_email'></span>

        <div style="color:#66a2c8">
        <?php
        if ($config[cf_use_email_certify]) {
            if ($w == '')
                echo "※ e-mail 로 발송된 내용을 확인한 후 인증하셔야 회원가입이 완료됩니다.";

            if ($w == 'u')
                echo "※ e-mail 주소를 변경하시면 다시 인증하셔야 합니다.";
        }
        ?>
        </div>
    </div>
</div>

<? if ($w == "") { ?>
<div class="form-group">
    <label class="col-lg-2 control-label">생년월일</label>
    <div class="col-lg-10">
        <div class="form-control">
            <input type="hidden" name="mb_birth" id="mb_birth" value="">
            <select name="mb_birth_year" id="mb_birth_year">
            <option value=""></option>
            <?php
            $s = date("Y", strtotime("-10 year", $g4['server_time']));
            $e = date("Y", strtotime("-100 year", $g4['server_time']));
            for ($i=$s; $i>$e; $i--) {
                $p = sprintf("%02d", $i);
                echo "<option value=\"{$p}\">{$p}</option>\n";
            }
            ?>
            </select> 년

            <select name="mb_birth_month" id="mb_birth_month">
            <option value=""></option>
            <?php
            for ($i=1; $i<=12; $i++) {
                $p = sprintf("%02d", $i);
                echo "<option value=\"{$p}\">{$p}</option>\n";
            }
            ?>
            </select> 월

            <select name="mb_birth_day" id="mb_birth_day">
            <option value=""></option>
            <?php
            for ($i=1; $i<=31; $i++) {
                $p = sprintf("%02d", $i);
                echo "<option value=\"{$p}\">{$p}</option>\n";
            }
            ?>
            </select> 일
        </div>
    </div>
</div>
<? } ?>

<? if ($member[mb_sex]) { ?>
<input type="hidden" name="mb_sex" value="<?=$member[mb_sex]?>">
<? } else { ?>
<div class="form-group">
    <label for="mb_sex" class="col-lg-2 control-label">성별</label>
    <div class="col-lg-10">
        <div class="form-control">
        <select name="mb_sex">
        <option value=""></option>
        <option value="F">여자</option>
        <option value="M">남자</option>
        </select>
        </div>
    </div>
</div>
<? } ?>

<? if ($config[cf_use_homepage]) { ?>
<div class="form-group">
    <label for="mb_homepage" class="col-lg-2 control-label">홈페이지</label>
    <div class="col-lg-10">
        <input class="form-control" type="text" name="mb_homepage" size="38" maxlength="255"
            <?=$config[cf_req_homepage]?'required':'';?> itemname="홈페이지" value="<?=$member[mb_homepage]?>">
    </div>
</div>
<? } ?>

<? if ($config[cf_use_tel]) { ?>
<div class="form-group">
    <label for="mb_tel" class="col-lg-2 control-label">전화번호</label>
    <div class="col-lg-10">
        <input class="form-control" type="text" name="mb_tel" id="mb_tel" size="21" maxlength="20"
        <?=$config[cf_req_tel]?"required":"";?> itemname="전화번호" value="<?=$member[mb_tel]?>">
    </div>
</div>
<? } ?>

<? if ($config[cf_use_hp]) { ?>
<div class="form-group">
    <label for="mb_hp" class="col-lg-2 control-label">핸드폰번호</label>
    <div class="col-lg-10">
        <input class="form-control" type="text" id="mb_hp" name="mb_hp" size="21" maxlength="20"
        <?=$config[cf_req_hp]?"required":"";?> itemname="핸드폰번호" value="<?=$member[mb_hp]?>">
    </div>
</div>
<? } ?>

<? if ($config[cf_use_addr]) { ?>
<div class="form-group">
    <label for="mb_zip1" class="col-lg-2 control-label">주소</label>
    <div class="col-lg-10">
        <div>
            <input type="text" name="mb_zip1" size="4" maxlength="3" readonly
                <?=$config[cf_req_addr]?"required":"";?> itemname="우편번호 앞자리" value="<?=$member[mb_zip1]?>">
            - 
            <input type="text" name="mb_zip2" size="4" maxlength="3" readonly
                <?=$config[cf_req_addr]?"required":"";?> itemname="우편번호 뒷자리" value="<?=$member[mb_zip2]?>">

            &nbsp;
            <button class="btn btn-default btn-sm" onclick='win_zip("fregisterform", "mb_zip1", "mb_zip2", "mb_addr1", "mb_addr2", "mb_addr3", "mb_addr_jibeon");' >우편번호찾기</button>
        </div>

        <div>
            <input class="form-control" type="text" name="mb_addr1" readonly placeholder="기본주소"
            <?=$config[cf_req_addr]?"required":"";?> itemname="기본주소" value="<?=$member[mb_addr1]?>">
        </div>
        <div>
            <input class="form-control" type="text" name="mb_addr2" placeholder="상세주소"
            <?=$config[cf_req_addr]?"required":"";?> itemname="상세주소" value="<?=$member[mb_addr2]?>">
        </div>
        <div>
            <input class="form-control" type="text" name="mb_addr3" readonly
            itemname="참고항목" value="<?=$member[mb_addr3]?>" placeholder="참고항목">
        </div>
        <div>
            <input type="hidden" name="mb_addr_jibeon" value="<?=$member["mb_addr_jibeon"]; ?>">
            <span id="mb_addr_jibeon"><?=($member["mb_addr_jibeon"] ? "지번주소 : ".$member["mb_addr_jibeon"] : ""); ?></span>
        </div>
    </div>
</div>
<? } ?>

<? if ($config[cf_use_signature]) { ?>
<div class="form-group">
    <label for="mb_signature" class="col-lg-2 control-label">서명</label>
    <div class="col-lg-10">
        <textarea name="mb_signature" id="mb_signature" class="form-control" rows="3"
        <?=$config[cf_req_signature]?'required':'';?> itemname='서명'><?=$member[mb_signature]?></textarea>
    </div>
</div>
<? } ?>

<? if ($config[cf_use_profile]) { ?>
<div class="form-group">
    <label for="mb_profile" class="col-lg-2 control-label">자기소개</label>
    <div class="col-lg-10">
        <textarea name="mb_profile" id="mb_profile" class="form-control" rows="3"
        <?=$config[cf_req_profile]?'required':'';?> itemname='자기 소개'><?=$member[mb_profile]?></textarea>
    </div>
</div>
<? } ?>

<? if ($member[mb_level] >= $config[cf_icon_level]) { ?>
<div class="form-group">
    <label for="mb_icon" class="col-lg-2 control-label">회원아이콘</label>
    <div class="col-lg-10">
        <input type="file" class="form-control" name="mb_icon" id="mb_icon">
        <div style="color:#66a2c8">
        ※ 이미지 크기는 가로(<?=$config[cf_member_icon_width]?>픽셀)x세로(<?=$config[cf_member_icon_height]?>픽셀)
        이하로 해주세요.<br>
        ※ gif만 가능<br>
        ※ 용량 <?=number_format($config[cf_member_icon_size])?>byte 이하만 등록됩니다.<br>
        </div>

        <? if ($w == "u" && file_exists($mb_icon)) { ?>
        <br><img src="<?=$mb_icon?>" align="absmiddle">
        <input type="checkbox" name="del_mb_icon" value="1"> 삭제
        <? } ?>
    </div>
</div>
<? } ?>

<div class="form-group">
    <label for="mb_mailling" class="col-lg-2 control-label">메일링서비스</label>
    <div class="col-lg-10">
        <div class="checkbox">
            <input type="checkbox" id="mb_mailling" name="mb_mailling" value="1"
                <?=($w=='' || $member[mb_mailling])?'checked':'';?>>
            <label for="mb_mailling">정보 메일을 받겠습니다.</label>
        </div>
    </div>
</div>

<div class="form-group">
    <label for="mb_sms" class="col-lg-2 control-label">SMS 수신여부</label>
    <div class="col-lg-10">
        <div class="checkbox">
            <input type="checkbox" id="mb_sms" name="mb_sms" value="1"
            <?=($w=='' || $member[mb_sms])?'checked':'';?>>
            <label for="mb_sms">핸드폰 문자메세지를 받겠습니다.</label>
        </div>
    </div>
</div>

<?php // 정보공개 수정일이 지났다면 수정가능
if ($member[mb_open_date] <= date("Y-m-d", $g4[server_time] - ($config[cf_open_modify] * 86400))) {
?> 
<div class="form-group">
    <label for="mb_open" class="col-lg-2 control-label">정보공개</label>
    <div class="col-lg-10">
        <div class="checkbox">
            <input type="hidden" name="mb_open_default" value="<?=$member[mb_open]?>"> 
            <input type="checkbox" id="mb_open" name="mb_open" value="1"
            <?=($w=='' || $member[mb_open])?'checked':'';?>>
            <label for="mb_open">다른분들이 나의 정보를 볼 수 있도록 합니다.</label>
        </div>
        <div style="color:#66a2c8">
        ※ 정보공개를 바꾸시면 앞으로 <?=(int)$config[cf_open_modify]?>일 이내에는 변경이 안됩니다.
        </div>
    </div>
</div>
<? } else { ?> 
<div class="form-group">
    <label for="mb_open" class="col-lg-2 control-label">정보공개</label>
    <div class="col-lg-10">
        <input type=hidden name="mb_open" value="<?=$member[mb_open]?>"> 
            정보공개는 수정후 <?=(int)$config[cf_open_modify]?>일 이내,
            <?=date("Y년 m월 j일", strtotime("$member[mb_open_date] 00:00:00") + ($config[cf_open_modify] * 86400))?>
            까지는 변경이 안됩니다.<br> 
            이렇게 하는 이유는 잦은 정보공개 수정으로 인하여 쪽지를 보낸 후 받지 않는 경우를 막기 위해서 입니다. 
    </div>
</div>
<? } ?> 

<? if ($w == "" && $config[cf_use_recommend]) { ?>
<div class="form-group">
    <label for="mb_recommend" class="col-lg-2 control-label">추천인아이디</label>
    <div class="col-lg-10">
        <input type="text" name="mb_recommend" class="form-control">
    </div>
</div>
<? } ?>

<div class="form-group">
    <label for="wr_key" class="col-lg-2 control-label"><img id='kcaptcha_image' width="120" height="60" /></label>
    <div class="col-lg-10">
        <input type="text" class="form-control" name="wr_key" id="wr_key" itemname="자동등록방지" required>
        <div style="color:#66a2c8"> ※ 자동등록방지 코드를 입력하세요.  </div>

    </div>
</div>

<div style="margin-top:20px; height:60px; text-align:center; clear:both;">
    <? if ($w == "") { ?>
    <input type="submit" class="btn btn-default" value="가입하기">
    <? } else { ?>
    <input type="submit" class="btn btn-default" value="수정하기">
    <? } ?>
</div>

<div style="clear:both;"></div>
</div> <!-- class=register -->

</form>

<script src="<?="js/jquery.kcaptcha.js"?>"></script>
<script>
// submit 최종 폼체크
function fregisterform_submit(f) 
{
    // 회원아이디 검사
    if (f.w.value == "") {

        reg_mb_id_check();

        if (document.getElementById('mb_id_enabled').value!='000') {
            alert('회원아이디를 입력하지 않았거나 입력에 오류가 있습니다.');
            document.getElementById('reg_mb_id').select();
            return false;
        }
    }

    if (f.w.value == '') {
        if (f.mb_password.value.length < 3) {
            alert('패스워드를 3글자 이상 입력하십시오.');
            f.mb_password.focus();
            return false;
        }
    }

    if (f.mb_password.value != f.mb_password_re.value) {
        alert('패스워드가 같지 않습니다.');
        f.mb_password_re.focus();
        return false;
    }

    if (f.mb_password.value.length > 0) {
        if (f.mb_password_re.value.length < 3) {
            alert('패스워드를 3글자 이상 입력하십시오.');
            f.mb_password_re.focus();
            return false;
        }
    }

    /*
    if (f.mb_password_q.value.length < 1) {
        alert('패스워드 분실시 질문을 선택하거나 입력하십시오.');
        f.mb_password_q.focus();
        return false;
    }

    if (f.mb_password_a.value.length < 1) {
        alert('패스워드 분실시 답변을 입력하십시오.');
        f.mb_password_a.focus();
        return false;
    }
    */

    // 이름 검사
    if (f.w.value=='') {
        if (f.mb_name.value.length < 1) {
            alert('이름을 입력하십시오.');
            f.mb_name.focus();
            return false;
        }

        var pattern = /([^가-힣\x20])/i; 
        if (pattern.test(f.mb_name.value)) {
            alert('이름은 한글로 입력하십시오.');
            f.mb_name.focus();
            return false;
        }
    }

    // 별명 검사
    if ((f.w.value == "") ||
        (f.w.value == "u" && f.mb_nick.defaultValue != f.mb_nick.value)) {

        reg_mb_nick_check();

        if (document.getElementById('mb_nick_enabled').value!='000') {
            alert('별명을 입력하지 않았거나 입력에 오류가 있습니다.');
            document.getElementById('reg_mb_nick').select();
            return false;
        }
    }

    // E-mail 검사
    if ((f.w.value == "") ||
        (f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {

        reg_mb_email_check();

        if (document.getElementById('mb_email_enabled').value!='000') {
            alert('E-mail을 입력하지 않았거나 입력에 오류가 있습니다.');
            document.getElementById('reg_mb_email').select();
            return false;
        }

        // 사용할 수 없는 E-mail 도메인
        var domain = prohibit_email_check(f.mb_email.value);
        if (domain) {
            alert("'"+domain+"'은(는) 사용하실 수 없는 메일입니다.");
            document.getElementById('reg_mb_email').focus();
            return false;
        }
    }

    if (typeof(f.mb_birth) != 'undefined') {
        f.mb_birth.value = f.mb_birth_year.value + f.mb_birth_month.value + f.mb_birth_day.value;
        if (f.mb_birth.value.length < 1) {
            alert('생일을 입력하여 주십시오.');
            //f.mb_birth.focus();
            return false;
        }

        var todays = <?=date("Ymd", $g4['server_time']);?>;
        // 오늘날짜에서 생일을 빼고 거기서 140000 을 뺀다.
        // 결과가 0 이상의 양수이면 만 14세가 지난것임
        var n = todays - parseInt(f.mb_birth.value) - 140000;
        if (n < 0) {
            alert("만 14세가 지나지 않은 어린이는 정보통신망 이용촉진 및 정보보호 등에 관한 법률\n\n제 31조 1항의 규정에 의하여 법정대리인의 동의를 얻어야 하므로\n\n법정대리인의 이름과 연락처를 '자기소개'란에 별도로 입력하시기 바랍니다.");
            return false;
        }
    }

    if (typeof(f.mb_sex) != 'undefined') {
        if (f.mb_sex.value == '') {
            alert('성별을 선택하여 주십시오.');
            f.mb_sex.focus();
            return false;
        }
    }

    if (typeof f.mb_icon != 'undefined') {
        if (f.mb_icon.value) {
            if (!f.mb_icon.value.toLowerCase().match(/.(gif)$/i)) {
                alert('회원아이콘이 gif 파일이 아닙니다.');
                f.mb_icon.focus();
                return false;
            }
        }
    }

    if (typeof(f.mb_recommend) != 'undefined') {
        if (f.mb_id.value == f.mb_recommend.value) {
            alert('본인을 추천할 수 없습니다.');
            f.mb_recommend.focus();
            return false;
        }
    }

    if (!check_kcaptcha(f.wr_key)) {
        return false;
    }

    <?
    if ($g4[https_url])
        echo "f.action = '$g4[https_url]/plugin/mobile/register_form_update.php';";
    else
        echo "f.action = './register_form_update.php';";
    ?>

    // 보안인증관련 코드로 반드시 포함되어야 합니다.
    set_cookie("<?=md5($token)?>", "<?=base64_encode($token)?>", 1, "<?=$g4['cookie_domain']?>");

    return true;
}

// 금지 메일 도메인 검사
function prohibit_email_check(email)
{
    email = email.toLowerCase();

    var prohibit_email = "<?=trim(strtolower(preg_replace("/(\r\n|\r|\n)/", ",", $config[cf_prohibit_email])));?>";
    var s = prohibit_email.split(",");
    var tmp = email.split("@");
    var domain = tmp[tmp.length - 1]; // 메일 도메인만 얻는다

    for (i=0; i<s.length; i++) {
        if (s[i] == domain)
            return domain;
    }
    return "";
}
</script>
